package ${clazz.pkgName};

<#list clazz.imports as i>
import ${i};
</#list>

/**
* @author ${clazz.author}
* @date ${clazz.date}
*/
<#list clazz.anns as ann>
    @${ann}
</#list>
public interface ${clazz.className} {

<#list clazz.methods as method>

    ${method.returnType!'void'} ${method.name}(<#list method.paramAnns as ann>@${ann} </#list><#if method.paramType??>${method.paramType} inputDTO</#if>);
</#list>

<#list clazz.clazzes as childClazz>

    <#list childClazz.anns as ann>
        @${ann}
    </#list>
    public static class ${childClazz.className} {
    <#list childClazz.fields as field>

        <#list field.anns as ann>
            @${ann}
        </#list>
        private ${field.lx} ${field.name};
    </#list>
    }
</#list>
}
